package response

import "time"

// LogResponse 日志响应
type LogResponse struct {
	ID           uint      `json:"id"`           // 日志ID
	UserID       uint      `json:"userId"`       // 用户ID
	Username     string    `json:"username"`     // 用户名称
	IP           string    `json:"ip"`           // IP地址
	Method       string    `json:"method"`       // 请求方法
	Path         string    `json:"path"`         // 请求路径
	Status       int       `json:"status"`       // 响应状态码
	Type         string    `json:"type"`         // 日志类型
	Latency      int64     `json:"latency"`      // 请求耗时(毫秒)
	Agent        string    `json:"agent"`        // 用户代理
	ErrorMsg     string    `json:"errorMsg"`     // 错误信息
	RequestBody  string    `json:"requestBody"`  // 请求体
	ResponseBody string    `json:"responseBody"` // 响应体
	CreatedAt    time.Time `json:"createdAt"`    // 创建时间

	// 系统日志页面需要的额外字段
	Time      string `json:"time"`      // 格式化后的时间
	Level     string `json:"level"`     // 日志级别：INFO, WARN, ERROR
	Message   string `json:"message"`   // 日志消息内容
	Caller    string `json:"caller"`    // 调用者/文件路径
	Operation string `json:"operation"` // 操作类型
}

// LogTypesResponse 日志类型响应
type LogTypesResponse struct {
	Types []string `json:"types"` // 日志类型列表
}
